The Implementation phase involves the actual creation of the IT system based on the designs produced in the previous phase. Depending on the type of IT system being developed, this phase can involve a wide range of activities. The team translates the detailed design documents into working code, builds the necessary infrastructure, and prepares the system for real-world use.
Depending on the project, the implementation phase will involve some or all of the following:
โ Question 1 โ Which of the following is a primary task during the Implementation phase?
Why C is correct: The text states that Implementation involves "Coding: software engineers translate detailed design documents into working code" and "Database creation: software/database engineers will build, populate and link databases." Option A is Requirements Gathering, Option B is System Design, and Option D is Acceptance Testing (part of the Testing phase).
Once the system is complete, the project moves to the Testing phase. During this phase, the development team carries out a series of activities to discover any issues that were not detected during implementation. The goal is not just to find bugs, but to ensure that all functional and non-functional requirements have been met, and that the system is robust, consistent, and reliable.
๐ The Log: During testing, all tests and their outcomes (including detailing any corrective actions taken) must be recorded. A detailed log is useful for auditing, quality assurance, and root cause analysis if a bug or issue arises in the future.
โ Question 2 โ What is the primary goal of the Testing phase?
Why C is correct: The text states that during testing, "the development team will carry out a series of activities to discover any issues... In addition to ensuring the system functions as expected, testing must ensure that all functional and non-functional requirements have been met and that the system is robust, consistent and reliable." Writing features is Implementation, training is Deployment, and installing software is also Deployment.
There are four main types of testing used in the Waterfall methodology. They happen in a specific order, from the smallest piece of code to the full system:
Performed by: Developers
Individual units or modules of code are tested to ensure they perform their specific functions correctly. Developers often use automated testing tools to rapidly test the unit/module against different scenarios and inputs.
Performed by: Developers
When more than one unit is completed, the units are combined and tested together to verify that they work together. It considers questions like: Does the system continue to function as new units are added? Do units communicate correctly? Is data passed between units reliable?
Performed by: QA Team
The entire system is tested against the predefined requirements and user needs. This typically involves manual testing by a dedicated QA team to simulate real-world usage scenarios.
Performed by: Stakeholders / End Users
This final stage involves formal confirmation by stakeholders or end-users that the system meets their expectations and is ready for deployment.
โ Question 3 โ A QA team manually tests the entire system to simulate real-world user scenarios and ensure it matches the original business requirements. Which type of testing is this?
Why C is correct: The text explicitly states: "System testing: the entire system is tested against the predefined requirements and user needs. This typically involves manual testing by a dedicated QA team to simulate real-world usage scenarios." Unit testing is for individual code modules, Integration testing combines modules, and Acceptance testing is the formal confirmation by stakeholders.
๐ You've mastered the Implementation and Testing Phases!
Recap:
โข Implementation: Coding, infrastructure setup, database creation, interface design, and documentation.
โข Testing Goals: Discover bugs, ensure robustness, reliability, and meet all functional requirements.
โข Testing Levels: Unit -> Integration -> System -> Acceptance. Each level has a specific focus and tester.
Ready to move on to the final phases: Deployment and Maintenance?